@import 'vxe.const';

@vxe-table-border-color: ~'#303030';
@vxe-table-border-width: '1px !default';

[data-theme='dark'] .@{prefix-cls} {
  @fontColor: #c9d1d9;
  @bgColor: #151515;
  @borderColor: #606060;

  .vxe-cell--item,
  .vxe-cell--title,
  .vxe-cell,
  .vxe-body--expanded-cell {
    color: @fontColor;
  }

  .vxe-form--wrapper {
    background-color: @bgColor;
  }

  .vxe-input--inner,
  .vxe-default-input {
    background-color: transparent;
    border: 1px solid @vxe-table-border-color;
  }

  .vxe-pager {
    background-color: @bgColor;

    &--prev-btn,
    &--next-btn,
    &--num-btn,
    &--jump-prev,
    &--jump-next {
      background-color: @bgColor;
    }

    &--goto {
      background-color: @bgColor;
      border: 1px solid @vxe-table-border-color;
    }

    .vxe-select-option--wrapper {
      background-color: @bgColor;
      border: 1px solid @vxe-table-border-color;

      .vxe-select-option {
        &:hover {
          color: #c9d1d9;
          background-color: rgb(255 255 255 / 8%);
        }

        &.is--selected {
          color: #c9d1d9;
          background-color: rgb(255 255 255 / 8%);
        }
      }
    }
  }

  .vxe-toolbar {
    background-color: @bgColor;

    &.is--perfect {
      border: 1px solid @vxe-table-border-color;
      border-bottom-width: 0;
      background-color: @bgColor;
    }
  }

  .vxe-table--render-default {
    .vxe-table--body-wrapper,
    .vxe-table--footer-wrapper {
      background-color: @bgColor;
    }

    &.border--default,
    &.border--inner {
      .vxe-header--column,
      .vxe-body--column,
      .vxe-footer--column {
        background-image: linear-gradient(@vxe-table-border-color, @vxe-table-border-color);
        background-repeat: no-repeat;
        background-size: 100% @vxe-table-border-width;
        background-position: right bottom;
      }
    }

    &.border--full {
      .vxe-header--column,
      .vxe-body--column,
      .vxe-footer--column {
        background-image: linear-gradient(@vxe-table-border-color, @vxe-table-border-color),
          linear-gradient(@vxe-table-border-color, @vxe-table-border-color);
        background-repeat: no-repeat;
        background-size: @vxe-table-border-width 100%, 100% @vxe-table-border-width;
        background-position: right top, right bottom;
      }

      .vxe-table--fixed-left-wrapper {
        // border-right: 1px solid @vxe-table-border-color;
        .vxe-body--column {
          border-right-color: @vxe-table-border-color;
        }
      }
    }

    &.border--default,
    &.border--full,
    &.border--outer,
    &.border--inner {
      .vxe-table--header-wrapper {
        .vxe-header--row {
          &:last-child {
            .vxe-header--gutter {
              background-image: linear-gradient(@vxe-table-border-color, @vxe-table-border-color);
              background-repeat: no-repeat;
              background-size: 100% @vxe-table-border-width;
              background-position: right bottom;
            }
          }
        }
      }
    }
  }

  // 外边框
  .vxe-table--render-default .vxe-table--border-line {
    border-color: @borderColor;
  }

  // header 下边框
  .vxe-table .vxe-table--header-wrapper .vxe-table--header-border-line {
    border-bottom-color: @borderColor;
  }

  // footer 上边框
  .vxe-table--render-default .vxe-table--footer-wrapper {
    border-top-color: @borderColor;
  }

  // 展开行 边框
  .vxe-table--render-default .vxe-body--expanded-column {
    border-bottom-color: @borderColor;
  }

  // 行斑马纹
  .vxe-table--render-default .vxe-body--row.row--stripe {
    background-color: #1e1e1e;
  }

  // 行hover
  .vxe-table--render-default .vxe-body--row.row--hover {
    background-color: #262626;
  }

  // 选中行
  .vxe-table--render-default .vxe-body--row.row--checked {
    background-color: #44403a;

    &.row--hover {
      background-color: #59524b;
    }
  }

  .vxe-table--render-default.border--default .vxe-table--header-wrapper,
  .vxe-table--render-default.border--full .vxe-table--header-wrapper,
  .vxe-table--render-default.border--outer .vxe-table--header-wrapper {
    background-color: #1d1d1d;
  }

  //.vxe-table--render-default.border--full .vxe-body--column,
  //.vxe-table--render-default.border--full .vxe-footer--column,
  //.vxe-table--render-default.border--full .vxe-header--column,
  //.vxe-table--render-default.border--default .vxe-body--column,
  //.vxe-table--render-default.border--default .vxe-footer--column,
  //.vxe-table--render-default.border--default .vxe-header--column,
  //.vxe-table--render-default.border--inner .vxe-body--column,
  //.vxe-table--render-default.border--inner .vxe-footer--column,
  //.vxe-table--render-default.border--inner .vxe-header--column {
  //  background-image: linear-gradient(@vxe-table-border-color, @vxe-table-border-color);
  //}

  // 列宽拖动
  .vxe-header--column .vxe-resizable.is--line::before {
    background-color: #505050;
  }

  // checkbox
  .vxe-custom--option .vxe-checkbox--icon::before,
  .vxe-export--panel-column-option .vxe-checkbox--icon::before,
  .vxe-table--filter-option .vxe-checkbox--icon::before,
  .vxe-table--render-default .vxe-cell--checkbox .vxe-checkbox--icon::before {
    background-color: @bgColor;
    border-color: @borderColor;
  }

  .vxe-toolbar .vxe-custom--option-wrapper {
    background-color: @bgColor;
  }

  .vxe-button {
    background-color: @bgColor;
    border-color: @borderColor;
  }

  .vxe-button.type--button:not(.is--disabled):active {
    background-color: @bgColor;
  }

  .vxe-toolbar .vxe-custom--wrapper.is--active > .vxe-button {
    background-color: @bgColor;
  }

  .vxe-toolbar .vxe-custom--option-wrapper .vxe-custom--footer button {
    color: @fontColor;
  }
}
